package cc.zy.base.hr.service;

import cc.zy.base.businesses.entity.College;
import cc.zy.base.common.entity.QueryRequest;
import cc.zy.base.hr.entity.TrainningBatch;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 培训批次
 * Service
 *
 * @author Jiangjinlin
 * @date 2021-01-18 10:51:13
 */
public interface ITrainningBatchService extends IService<TrainningBatch> {

    /**
     * 查询（分页）
     *
     * @param request QueryRequest
     * @param trainningBatch trainningBatch
     * @return IPage<TrainningBatch>
     */
    IPage<TrainningBatch> listTrainningBatchs(QueryRequest request, TrainningBatch trainningBatch);

    /**
     * 新增
     *
     * @param trainningBatch trainningBatch
     */
    void createTrainningBatch(TrainningBatch trainningBatch);

    /**
     * 修改
     *
     * @param trainningBatch trainningBatch
     */
    void updateTrainningBatch(TrainningBatch trainningBatch);

    /**
     * 删除培训批次
     *
     * @param trainningBatchIds 培训批次 id数组
     */
    void deleteTrainningBatchs(String[] trainningBatchIds);

    /**
     * 查询不带分页
     */
    List<TrainningBatch> listTrainningBatchListNotPage(TrainningBatch trainningBatch);

    /**
     * 判断是否与数据库中trainningName重名
     *
     * @param trainningName
     * @return
     */
    Boolean isRepetitive(String trainningName);

    /**
     * 方法描述: 通过ID查找批次详细信息
     * @param:
     * @return:
     * @author pengfeng
     * @date: 2022/3/8 22:10
     */
    TrainningBatch findById(Integer id);

    /**
     * 方法描述: 草稿转定稿
     * @param:
     * @return:
     * @author pengfeng
     * @date: 2022/3/8 22:10
     */
    void draftToExecute(Integer id);
}